It is common for computer applications and operating systems to be configured such that the computer operating systems periodically receive messages from computer applications. The messages inform the operating system that the applications are functioning properly. When an application does not transmit a message when expected, the application is considered to be “hung.” An application can hang for a number of reasons, including a slow network connection, an intensive processing routine or an error condition. Users often notice that an application is hung when an application window appears, but does not allow the users to interact with an application. For example, a word processing application may periodically send messages to an operating system. When the word processing application becomes hung, the user may be allowed to move an application window, but cannot save a document, access any of the menu commands or perform any other operation that requires the word processing application to interact with the operating system.
Existing computer operating systems do not provide an indication to users when an application hangs. Users can become frustrated when trying to interact with an application window that they can see, but is non-responsive to inputs from the users. Moreover, hung applications do not provide display data to the operating system. As a result, when another application window is placed over a hung application window, the display data for the hung application window is lost and cannot be restored.
Therefore, there is a need in the art for computer operating system functionality that alerts users when an application hangs.